package com.essg.sdc.study;

import com.essg.sdc.base.BaseAlgo;

/**
 * <H1>新人社員向けアルゴリズム(Java)</H1>
 *<H2>アルゴリズム（インナーソート）</H2><br>
 *<ol>
 *	<li>テーブルサーチ用部署・課名称配列を部署コード+課コードで昇順に並べ替える。
 *</ol>
 *
 * @author ess0034
 */
public class InnerSort extends BaseAlgo {

	/**
	 * <H2>インナーソート　コンストラクタ</H2>
	 * <ol>
	 * 	<li>Superクラスを実行しテーブルサーチ用部署・課名称配列を作成する。
	 * </ol>
	 */
	public InnerSort() {
		super(ALGO_TYPE.INNERSORT);
	}

	/**
	 * <H2>インナーソートの実行</H2>
	 * <ol>
	 * 	<li>テーブルサーチ用部署・課名称配列を昇順に並べ変える。
	 * 	<li>Superクラスの部署・課名称の一覧表示（printDivSecName）を使用して内容を表示する。
	 * </ol>
	 */
	@Override
	public void ListAlgo() {

		String _wk;

		for(int i=0;i<mDivsionName.length-1;i++){

			for(int j=i+1;j<mDivsionName.length;j++){
				if(Integer.parseInt(mDivsionName[i].substring(0,5)) > Integer.parseInt(mDivsionName[j].substring(0,5))){
					_wk = mDivsionName[j];
					mDivsionName[j] = mDivsionName[i];
					mDivsionName[i] = _wk;
				}
			}
		}

		printDivSecName();
	}

	/**
	 * InnerSortの実行メイン
	 * @param args 実行パラメタ（今回は未使用）
	 * InnerSortをインスタンス化し、ListAlgo(インナーソート)を実行
	 */
	public static void main(String[] args) {

		InnerSort _obj = new InnerSort();
		_obj.ListAlgo();

	}

}
